import request from '@/utils/request'

/**
 * 章节管理API服务
 */

/**
 * 获取章节分页列表
 * @param {Object} params 查询参数
 * @param {number} params.page 页码
 * @param {number} params.size 每页条数
 * @param {string} params.keyword 搜索关键词
 * @returns {Promise} 返回章节分页数据
 */
export const getChapterPage = (params) => {
  return request({
    url: '/api/edu/chapter/page',
    method: 'post',
    data: params
  })
}

/**
 * 根据课程ID获取章节列表
 * @param {string} courseId 课程ID
 * @returns {Promise} 返回章节列表
 */
export const getChapterListByCourseId = (courseId) => {
  return request({
    url: '/api/edu/chapter/list/' + courseId,
    method: 'get'
  })
}

/**
 * 根据ID获取章节详情
 * @param {string} id 章节ID
 * @returns {Promise} 返回章节详情
 */
export const getChapterById = (id) => {
  return request({
    url: '/api/edu/chapter/' + id,
    method: 'get'
  })
}

/**
 * 添加或更新章节
 * @param {Object} chapterData 章节数据
 * @returns {Promise} 返回操作结果
 */
export const saveOrUpdateChapter = (chapterData) => {
  if (chapterData.id) {
    return request({
      url: '/api/edu/chapter',
      method: 'put',
      data: chapterData
    })
  } else {
    return request({
      url: '/api/edu/chapter',
      method: 'post',
      data: chapterData
    })
  }
}

/**
 * 删除章节
 * @param {string} id 章节ID
 * @returns {Promise} 返回操作结果
 */
export const deleteChapter = (id) => {
  return request({
    url: '/api/edu/chapter/' + id,
    method: 'delete'
  })
}

export default {
  getChapterPage,
  getChapterListByCourseId,
  getChapterById,
  saveOrUpdateChapter,
  deleteChapter
}